<?php

if($_SESSION['typ'] == 'personel') {

	echo '<nav>';
	echo '<a href="?akcja=nowa">Rejestracja pacjenta na wizytę</a>';
	echo '<a href="?akcja=wizyty">Wszystkie zaplanowane wizyty</a>';
	echo '</nav>';

	include('./sql/conf.php');

	$polaczenie = new mysqli($serwerMySQL, $uzytkownikMySQL, $hasloMySQL, $bazaMySQL);

	$stmt = $polaczenie->stmt_init();

	if($polaczenie) {

		if(!isset($_GET['akcja']) || $_GET['akcja'] == 'wizyty') {

			$stmt->prepare("SELECT t.id_terminu, t.data, t.godzina, l.imie, l.nazwisko, p.imie, p.nazwisko, p.id_pacjenta, p.pesel FROM dane_osobowe p, terminy t, lekarze l WHERE t.id_lekarza=l.id_lekarza AND t.id_pacjenta=p.id_pacjenta AND t.id_terminu NOT IN (SELECT id_terminu FROM wizyty) ORDER BY data, godzina");
			$stmt->execute();
			echo $stmt->error;
			$stmt->bind_result($idTerminu, $data, $godzina, $imieLekarza, $nazwiskoLekarza, $imie, $nazwisko, $idPacjenta, $pesel);

			while($stmt->fetch()) {
					
				if(strlen($godzina) == 3) $godzina = '0'.$godzina;
					
				$godzina = substr($godzina, 0, 2).':'.substr($godzina, 2, 2);
				
				$rok = 1900 + substr($pesel, 0, 2);
				$miesiac = substr($pesel, 2, 2);
				$dzien = substr($pesel, 4, 2);
				$rok = $rok + 100*(floor(($miesiac-1) / 12));
				
				echo '<div class="wizyta">';
				echo '<h3>'.$imie.' '.$nazwisko.'</h3>';
				echo 'Data urodzenia: '.$dzien.'.'.($miesiac%13).'.'.$rok.'<br>';
				echo 'Wizytya dnia: '.$data.', o godz.: '.$godzina.'<br>';
				echo 'U lekarza: '.$imieLekarza.' '.$nazwiskoLekarza.'<br>';
				echo '<a href="php/cancelVisit.php?idTerminu='.$idTerminu.'">Odwołaj wizytę</a><br>';
				echo '</div>';
					
			}

		}
		
		if($_GET['akcja'] == 'nowa') {
			
			echo '<h2>Rejestracja pacjenta na wizytę</h2>
			<form action="php/patientRegisterByEmp.php" method="post" id="rejestracja">
			<table>
			<tr>
			<td><input type="text" name="imie" placeholder="Imię"
			id="imie"></td>
			<td id="wer-imie" class="weryfikacja">Tylko litery</td>
			</tr>
			<tr>
			<td><input type="text" name="nazwisko" placeholder="Nazwisko"
			id="nazwisko"></td>
			<td id="wer-nazwisko" class="weryfikacja">Tylko litery i spacja</td>
			</tr>
			<tr>
			<td><input type="text" name="pesel"
			placeholder="PESEL lub data urodzenia" id="pesel"></td>
			<td id="wer-pesel" class="weryfikacja">PESEL lub data urodzenia
			(1990-02-03)</td>
			</tr>
			<tr>
			<td><input type="text" name="nip" placeholder="NIP" id="nip"></td>
			<td id="wer-nip" class="weryfikacja">W formacie 0001112233
			(opcjonalnie)</td>
			</tr>
			<tr>
			<td><input type="text" name="adres" placeholder="Adres"
			id="adres"></td>
			<td id="wer-adres" class="weryfikacja">Nazwa ulicy i numer
			domu/lokalu</td>
			</tr>
			<tr>
			<td><input type="text" name="kod_pocztowy" placeholder="Kod pocztowy"
			id="kod_pocztowy"></td>
			<td id="wer-kod_pocztowy" class="weryfikacja">W postaci 00-000</td>
			</tr>
			<tr>
			<td><input type="text" name="miejscowosc" placeholder="Miejscowość"
			id="miejscowosc"></td>
			<td id="wer-miejscowosc" class="weryfikacja">Nazwa miejscowości
			(poczta)</td>
			</tr>
			<tr>
			<td><input type="text" name="telefon" placeholder="Telefon"
			id="telefon">
			</td>
			<td id="wer-telefon" class="weryfikacja">Z kodem kraju, np.
			48555111222</td>
			</tr>
			<tr>
			<td><input type="text" name="osoba_kontaktowa"
			placeholder="Osoba kontaktowa" id="osoba_kontaktowa"></td>
			<td id="wer-osoba_kontaktowa" class="weryfikacja">Imię i nazwisko
			osoby kontaktowej</td>
			</tr>
			<tr>
			<td><input type="text" name="telefon_do_osoby_k"
			placeholder="Telefon osoby kontaktowej"
			id="telefon_do_osoby_k"></td>
			<td id="wer-telefon_do_osoby_k" class="weryfikacja">Z kodem kraju,
			np. 48555111222</td>
			</tr>
			<tr>
			<td id="rejstracjaInfo"></td>
			<td class="weryfikacja" style="text-align: center"><h2>
			<br><a href="#" onclick="document.getElementById(\'rejestracja\').submit();">Zarejestruj &raquo;</a>
			</h2></td>
			</tr>
			</table>
			</form>';
			
		}
		
		if($_GET['akcja'] == 'termin' && isset($_GET['id'])) {
			
			if(isset($_POST['lekarz'])) {

			$data = date('Y-m-d', strtotime($_POST['data']));

			$stmt->prepare("SELECT godzina FROM grafik WHERE godzina NOT IN (SELECT godzina FROM terminy WHERE data=? AND id_lekarza=?) LIMIT 0, 1");
			$stmt->bind_param('ss', $data, $_POST['lekarz']);
			$stmt->execute();
			$stmt->bind_result($godzina);
			$stmt->fetch();

			if($godzina != NULL) {
					
				$stmt->prepare("INSERT INTO terminy (id_terminu, id_pacjenta, id_lekarza, data, godzina) VALUES (NULL, ?, ?, ?, ?)");
				$stmt->bind_param('ssss', $_GET['id'], $_POST['lekarz'], $data, $godzina);
				$stmt->execute();
				$stmt->free_result();

				if($godzina < 1000) $godzina = '0'.$godzina;

				$godzina = substr($godzina, 0, 2).':'.substr($godzina, 2, 2);

				echo '<p style="text-align: center;">Zaplanowano nową wizytę ('.$data.', '.$godzina.').</p>';

				include('./php/sms.php');
				sendSMS($_GET['id'], 'Umowiono nowa wizyte u specjalisty. Zapraszamy '.$data.', na godzine '.$godzina.'.');


			} else {

				echo '<p style="text-align: center;">Lekarz nie ma wolnych terminów tego dnia. Spróbuj wybrać inny dzień.</p>';

			}

		}
			
			echo '<form action="" method="post">';
			
			echo '<h3>Lekarz</h3>';
			
			echo '<select name="lekarz">';
			
			$stmt->prepare("SELECT l.id_lekarza, l.nazwisko, l.imie, s.nazwa FROM lekarze l, specjalnosci s WHERE l.specjalnosc=s.id_specjalnosci");
			
			$stmt->execute();
			
			$stmt->bind_result($id, $nazwisko, $imie, $specjalnosc);
			
			while($stmt->fetch()) {
			
				echo '<option value="'.$id.'">'.$nazwisko.' '.$imie.' ('.$specjalnosc.')</option>';
			
			}
			
			echo '</select>';
			
			echo '<h3>Termin</h3>';
			
			echo '<select name="data">';
			
			$dataPoczatek = strtotime(date('d-m-Y'));
			for($i=0; $i < 180; $i++) {
			
				$data = date('d-m-Y', $dataPoczatek + (60*60*24*$i));
			
				if(date('N', strtotime($data)) != 6 && date('N', strtotime($data)) != 7)
				echo '<option value="'.$data.'">'.$data.'</option>';
			
			}
			
			echo '</select>';
			
			echo '<br><input type="submit" value="Umów wizytę" style="width: 30%; margin-left: 50%">';
			
			echo '</form>';
			
		}

	} else {

		echo 'Błąd połączenia z bazą danych';

	}

}

?>